38 research outputs found

    A Toolset for Supporting UML Static and Dynamic Model Checking

    Get PDF
    The Unified Modeling Language has become widely accepted as a standard in software development. Several tools have been produced to support UML model validation. However, most of them support either static or dynamic model checking; and no tools support to check both static and dynamic aspects of a UML model . But a UML model should include the static and dynamic aspects of a software system. Furthermore, these UML tools translate a UML model into a validation language such as PROMELA. But they have some shortcomings: there is no proof of correctness (with respect to the UML semantics) for these tools. In order to overcome these shortcomings, we present a toolset which can validate both static and dynamic aspects of a model; and this toolset is based on the semantic model using Abstract State Machines. Since the toolset is derived from the semantic model, the toolset is correct with respect to the semantic model

    Measuring Confidence of Assurance Cases in Safety-Critical Domains

    Get PDF
    Evaluation of assurance cases typically requires certifiers’ domain knowledge and experience, and, as such, most software certification has been conducted manually. Given the advancement in uncertainty theories and software traceability, we envision that these technologies can synergistically be combined and leveraged to offer some degree of automation to improve the certifiers’ capability to perform software certification. To this end, we present DS4AC, a novel confidence calculation framework that 1) applies the Dempster-Shafer theory to calculate the confidence between a parent claim and its children claims; and 2) uses the vector space model to evaluate the confidence for the evidence items using traceability information. We illustrate our approach on two different applications, where safety is the key property of interest for both systems. In both cases, we use the Goal Structuring Notation to represent the respective assurance cases and provide proof of concept results that demonstrate the DS4AC framework can automate portions of the evaluation of assurance cases, thereby reducing the burden of manual certification process

    The application of abstract state machines in software engineering.

    Full text link
    In this thesis we present two applications of Abstract State Machines in software engineering. As a formal method, Abstract State Machines have played an important role in software engineering. The first application of Abstract State Machines in this thesis is a static and dynamic semantics for C. Although ASMs have been used to give dynamic semantics for C, we present both static and dynamic semantics for C using an ASM tool called Montage. Because Montage supports ASM execution, any C program can be executed after we have given both static and dynamic semantics for C. As the second application of ASMs in software engineering, we apply ASMs to the Unified Modeling Language, which has become a standard language in software development. UML is a rich language which includes many diagrams to describe different aspects of a software system. In order to help UML users find errors in their early design, we present a semantic model for some several important diagrams in UML using ASMs. In order to help software designers find errors in the static aspect of a UML model, we present an ASM model for a class diagram, object diagram and the Object Constraint Language (OCL) in this thesis. A software designer can use this tool to find syntax errors in a UML model and check whether some important states are included in a UML model. On the other hand, an ASM model for a state machine in UML is also given in this thesis. Based on this ASM model, we can verify properties and find some errors in a UML model using the ASM model checker.Ph.D.Applied SciencesComputer scienceUniversity of Michigan, Horace H. Rackham School of Graduate Studieshttp://deepblue.lib.umich.edu/bitstream/2027.42/128588/2/3029427.pd

    The Static and Dynamic Semantics of C (Extended Abstract)

    No full text
    This book constitutes the thoroughly refereed post-proceedings of the International Workshop on Abstract State Machines, ASM 2000, held in Monte Verita, Switzerland in March 2000. The 12 revised full papers presented were carefully reviewed and selected from 30 submissions. Also included are an introductory overview, two reports on industrial ASM applications, as well as six contributions based on invited talks. All in all, the volume competently presents the state of the art in research and applications of abstract state machines

    The Static and Dynamic Semantics of C: Preliminary Version

    No full text
    Montages are a semi-visual formalism for defining the static and dynamic semantics of a programming language using Gurevich's Abstract State Machines (ASMs). We describe an application of Montages to describe the static and dynamic semantics of the C programming language

    An approach to evaluating structural pattern conformance of UML models

    No full text
    This paper describes an approach to evaluating the structural conformance of a UML class diagram to a design pattern. A design pattern is specified in an extension of the UML that defines the pattern as a family of models. A pattern specification consists of a set of pattern roles where a role specifies the properties of a pattern participant. The approach uses a divide-and-conquer method to evaluate pattern conformance. In the approach a pattern and the model being evaluated are decomposed into blocks. Then, the model blocks are evaluated for conformance to the role blocks in the pattern. When all individual role blocks are satisfied by the model blocks, the pattern as a whole is considered to evaluate the entire conformance of the model. A major benefit of this approach is the support for variations of pattern realizations through the notion of pattern roles. We illustrate the approach using the Visitor pattern and a price calculator, and demonstrate a prototype tool that supports the approach. 1

    A toolset for supporting UML static and dynamic model checking

    No full text
    The Unified Modeling Language has become widely accepted as a standard in software development. Several tools have been produced to support UML model validation. However, most of them support either static or dynamic model checking; and no tools support to check both static and dynamic aspects of a UML model. But a UML model should include the static and dynamic aspects of a software system. Furthermore, these UML tools translate a UML model into a validation language such as PROMELA. But they have some shortcomings: there is no proof of correctness (with respect to the UML semantics) for these tools. In order to overcome these shortcomings, we present a toolset which can validate both static and dynamic aspects of a model; and this toolset is based on the semantic model using Abstract State Machines. Since the toolset is derived from the semantic model, the toolset is correct with respect to the semantic model.
    corecore